<?php
//include "cabecera.php";
//include "menu_administrativo.php";

include_once "../negocio/Documento.php";
include_once "../negocio/Solicitud.php";
include_once "../negocio/FormatoDocumento.php";
include_once "../negocio/Cliente.php";
include_once "../negocio/Repertorioprivado.php";
$meses[1]="enero";
$meses[2]="febrero";
$meses[3]="marzo";
$meses[4]="abril";
$meses[5]="mayo";
$meses[6]="junio";
$meses[7]="julio";
$meses[8]="agosto";
$meses[9]="septiembre";
$meses[10]="octubre";
$meses[11]="noviembre";
$meses[12]="diciembre";
?>
<div id="cover">&nbsp;</div>
<div id="editor" title="modal dialog">

<script type="text/javascript">
	tinyMCE.init({
		// General options
		mode : "textareas",
		theme : "advanced",
		skin : "o2k7",
		plugins : "autolink,lists,pagebreak,style,layer,table,save,advhr,advimage,advlink,emotions,iespell,insertdatetime,preview,media,searchreplace,print,contextmenu,paste,directionality,fullscreen,noneditable,visualchars,nonbreaking,xhtmlxtras,template,inlinepopups,autosave",

		// Theme options
		theme_advanced_buttons1 : "save,newdocument,|,bold,italic,underline,strikethrough,|,justifyleft,justifycenter,justifyright,justifyfull,|,styleselect,formatselect,fontselect,fontsizeselect",
		theme_advanced_buttons2 : "cut,copy,paste,pastetext,pasteword,|,search,replace,|,bullist,numlist,|,outdent,indent,blockquote,|,undo,redo,|,link,unlink,anchor,image,cleanup,help,code,|,insertdate,inserttime,preview,|,forecolor,backcolor",
		theme_advanced_buttons3 : "tablecontrols,|,hr,removeformat,visualaid,|,sub,sup,|,charmap,emotions,iespell,media,advhr,|,print,|,ltr,rtl,|,fullscreen",
		theme_advanced_buttons4 : "insertlayer,moveforward,movebackward,absolute,|,styleprops,|,cite,abbr,acronym,del,ins,attribs,|,visualchars,nonbreaking,template,pagebreak,restoredraft",
		theme_advanced_toolbar_location : "top",
		theme_advanced_toolbar_align : "left",
		theme_advanced_statusbar_location : "bottom",
		theme_advanced_resizing : true,

		// Example word content CSS (should be your site CSS) this one removes paragraph margins
		content_css : "css/word.css",

		// Drop lists for link/image/media/template dialogs
		template_external_list_url : "lists/template_list.js",
		external_link_list_url : "lists/link_list.js",
		external_image_list_url : "lists/image_list.js",
		media_external_list_url : "lists/media_list.js",

		// Replace values for the template plugin
		template_replace_values : {
			username : "Some User",
			staffid : "991234"
		}
	});
</script>
<script type="text/javascript">
if (document.location.protocol == 'file:') {
	alert("The examples might not work properly on the local file system due to security settings in your browser. Please use a real webserver.");
}
</script>

</div>
<script>
function detenerPropagacion(evento)
{
	var defaultPrevented = evento.isDefaultPrevented();
	evento.preventDefault();

	if(defaultPrevented==true){ evento.stopPropagation(); return 0; }
	else
	{
		return 1;
		//ejecutar codigo normalmente....
	}

}

function poner_reglones()
{
	$(".mas").click(function(ev)
	{
		var reglon_rut = $(".reglon_rut:last").html();
		$(".reglon_rut").append("<div class=reglon_rut></div>"); $(".reglon_rut:last").html(reglon_rut);

		ev.preventDefault();
		ev.stopPropagation();

		poner_reglones();


	});
}
function quitar_reglones()
{
	$(".menos").click(function(ev)
	{
		var t = $(".reglon_rut").size();
		if(t>1)
		{
			var index = $(".menos").index(this);
			$(".reglon_rut").eq(index).remove();
		}
	});
}

$(document).ready(function()
{
	//Agregar mas reglones


	$(".mas").click(function(ev)
	{
		if(detenerPropagacion(ev))
		{
			var reglon_rut = $(".reglon_rut:last").html();
			$(".reglon_rut:last").append("<div class=reglon_rut></div>"); $(".reglon_rut:last").html(reglon_rut);
		}
	});
	//Quitar el ultimo reglon.
	$(".menos").click(function(ev)
	{
		var t = $(".reglon_rut").size();
		if(t>1){ $(".reglon_rut:last").remove(); }
	});

});
</script>
<style>
.label_col{ width:20%; float:left; background:#777; color:#fff; text-align:left; }
.span_col{ width:30%; float:left; background:#fff; color:#000; text-align:left; }
</style>

<h2>Solicitud Documento</h2>
<hr>
	<form method=post action="" style="width:100%;float:left;">
	<table> 
            <input type=hidden name=op value="<?=$op;?>">
                <div style="width:30%;float:left;">
                    <?
                    //$Deuda = new Deuda();
                    $rutcli = "";	if(isset($_POST["rutcli"])) $rutcli = $_POST["rutcli"];
                    $n_rut = count($rutcli);
                    if($n_rut>0)
                    {
                        //for($c=0;$c<$n_rut;$c++)
                        //{
                            $rut = $rutcli[0];
                            ?>
                                <tr>
                                    <td><label>Rut Vendedor</label></td>
                                    <td><input type=text name="rutcli[]" id="rut_cliente" autocomplete="off" value="<?=$rutcli[0];?>"></td>
                    <td>Categoria</td>
                <td>
                <?
                $Categoria = new Categoria();
                $Categoria->setEstado(TRUE);
                $Categoria->setSeccion("Vehiculo");
                $Categoria->obtenerCategorias();
                $objcat=$Categoria->getArregloObjetos();


                ?>
                 <select name="categoria">
                        <?

                        for($i=0;$i<count($objcat);$i++)
                        {
                            $obj = $objcat[$i];
                            $codigo_cat= $obj->getId_categoria();
                            $nombre_cat = $obj->getNombre_categoria();

                            ?><option value="<?=$codigo_cat;?>"><?=$nombre_cat;?></option><?
                            unset($obj);
                        }
                        ?>
                 </select>
                </td>
                                    <td>
                
                                        <label>Formato a solicitar</label>
                                        <?
                                        $formato_listar = new FormatoDocumento();
                                        $formato_listar->setEstado(1);
                                        //$formato_listar->setNombre_formato("Compra Venta Vehículo");
                                        $formato_listar->setIdCategoria("38");
                                        $formato_listar->buscarFormatos();
                                        $arrObjFormato = $formato_listar->getArregloObjetos();
                                        //var_dump($arrObjFormato);
                                        ?>
                                        <select name="cod_formato">
                                            <?
                                            for($i=0;$i<count($arrObjFormato);$i++)
                                            {
                                                $obj = $arrObjFormato[$i];
                                                $codigo_formato = $obj->getCod_formato();
                                                $nombre_formato = $obj->getNombre_Formato();

                                                ?><option value="<?=$codigo_formato;?>"><?=$nombre_formato;?></option><?
                                                unset($obj);
                                            }
                                            $formato_listar->setArregloObjetos($arrObjFormato);

                                            ?>
                                        </select>
                                    </td>
                                    <td><div style="width:30%;float:right;"><input type=submit name=submit value="Solicitar"></div></td>
                                </tr>
                                <tr>
                                <td><label>Rut Comprador</label></td>
                                <td><input type=text name="rutcli[]" id="rut_cliente1" autocomplete="off" value="<?=$rutcli[1];?>"></td>
                                <td></td>
                                </tr>
                            
                            <?
                        //}
                    }
                    else
                    {
                    ?>
                    <div class=reglon_rut style="width:100%;float:left;margin:2px 0px 2px 0px;">
                            <label>Rut</label>
                            <input type=text class=rutcli name="rutcli[]" value="">
                    </div>
                    <?
                    }
                    ?>
                </div>

		
	
        </table>
        </form>
        <br>
        <?
        if(isset($_POST["guardar_documento"]))
        {
            //Digitamos el documento final.
            $formulario_texto = $_POST['contenido_documento'];
            //echo $formulario_texto;
            $objDoc = $obj_funcionario->getObjDocumento();
            $objDoc->setContenido($formulario_texto);
            if($config->getFirma_manual()==1){
            $objDoc->setEstado("firmado");
            }
            //echo $formulario_texto;
                    $objSolic = new Solicitud();
                    $objSolic->ultimoNroSolic();
                    $objSolic->setFecha(date("Y-m-d"));
                    $objSolic->setNombre_solicitante($_REQUEST['nombre_solicitante']);


                    if($_REQUEST['gratis']=='1')$objSolic->setDerecho('0');
                    else $objSolic->setDerecho($_REQUEST['derecho']);
                    //echo "*".$_REQUEST['tipopago']."*";
                    if($_REQUEST['tipopago']=='1'){
                    $objSolic->setTipo_pago('1');//contado
                    $objSolic->setRut_empresa("");
                    }
                    else
                        {
                        $objSolic->setTipo_pago('2');//deuda
                        $objSolic->setRut_empresa($_REQUEST['rut_empresa']);
                        }

                    $objSolic->setEstado('1');//0,1
                    $objSolic->setNumero_turno($_REQUEST['numero_turno']);
                $objDoc->setObjSolic($objSolic);
            
            //echo "".$objDoc->getRut()."";
            $objRepPrivado = new Repertorioprivado();
            $objRepPrivado->setComprador($_REQUEST['rut1']);
            $objRepPrivado->setVendedor($_REQUEST['rut0']);

            //echo  $_REQUEST['nombre_completo0'];
            //echo "<br>";
            //echo $_REQUEST['nombre_completo1'];
            $nombre_vendedor=preg_split("/ /", $_REQUEST['nombre_completo0']);

            $nombre_comprador=preg_split("/ /", $_REQUEST['nombre_completo1']);
           // print_r($nombre_comprador);
           // print_r($nombre_vendedor);
           // echo "*".count($nombre_comprador)."*";
            //echo $objRepPrivado->getVendedor();
            //echo $objRepPrivado->getComprador();


            $objRepPrivado->setNombre_comprador($nombre_comprador[0]);
            $objRepPrivado->setApellido_comprador($nombre_comprador[count($nombre_comprador)-2]." ".$nombre_comprador[count($nombre_comprador)-1]);

            $objRepPrivado->setNombre_vendedor($nombre_vendedor[0]);
            $objRepPrivado->setApellido_vendedor($nombre_vendedor[count($nombre_vendedor)-2]." ".$nombre_vendedor[count($nombre_vendedor)-1]);

            $objRepPrivado->setContenido($formulario_texto);

            
            $objRepPrivado->setEmpresa_vende($_REQUEST['rut0']);
            $objRepPrivado->setEmpresa_compra($_REQUEST['rut1']);
            $objRepPrivado->setFojas($_REQUEST['fojas']);
            $objDoc->setObjRepertorioPrivado($objRepPrivado);
            $contenido = $objDoc->digitarDocumento();
            unset($objDoc);
        }
        ?>
        <br>
	<?
        //$obj_funcionario->setObjDocumento($objDoc);
	if(isset($_POST["submit"]))
	{
            //Obtenemos el objeto formato.
		$cod_formato = "";	if(isset($_POST["cod_formato"])) $cod_formato = $_POST["cod_formato"];
		$objFormato=null;
                for($c=0;$c<count($arrObjFormato);$c++)
                {
                    $objFormato = $arrObjFormato[$c];
                    $codigo_formato = $objFormato->getCod_formato();
                    if($codigo_formato==$cod_formato) break;
                }
            //Obtenemos los objetos cliente
                $objArregloClientes = new Cliente();

                $arrAuxCli = array();
                for($c=0;$c<$n_rut;$c++)
		{
                    $rut = $rutcli[$c];

                    $cli = new Cliente();
                    $cli->setRut($rut);
                    $cli->buscarClientes();
                    $arrObj = $cli->getArregloObjetos();

                    $arrAuxCli[$c] = $arrObj;

                    if(count($arrObj)>0)
                    {
                        $obCli = $arrObj[0];    //retornamoss una sola posicion de cliente.

                        $rut = $obCli->getRut();
                        $nombres = $obCli->getNombres();
			$apellido_p = $obCli->getApellido_p();
			$apellido_m = $obCli->getApellido_m();
			$ciudad = $obCli->getCiudad();
			$direccion = $obCli->getDireccion();
			$email = $obCli->getEmail();
			$telefono = $obCli->getTelefono();

			$fechareg = $obCli->getFecha_registro();
			$fechanac = $obCli->getFecha_nacimiento();
                        $rut_empresa = $obCli->getEmpresa();
                        echo $rut_empresa;
			?>

			<?
                        unset($obCli);
                    }
                    else
                    {
                        ?>
			<fieldset>
			<legend>Datos del Cliente <?=$c+1;?></legend>
			Rut no registrado <a class="various fancybox.iframe" href="cliente_agregar.php">Registrar Cliente</a>
			</fieldset>
			<?
                    }

                    unset($cli);
		}

                $objArregloClientes->setArregloObjetos($arrAuxCli);
                $arr = $objArregloClientes->getArregloObjetos();
                $obj = $arr[0][0];
                $obj_comprador = $arr[1][0];
                ?>

                <fieldset>
                <form action="?op=solicitud_compra_venta_vehiculo" method="post" id="form_guardar" onsubmit="funct_guardar_documento()">
                     
                     <legend>O.T.</legend>
                     <table>
                         <tr>
                             <td>Nombre Solicitante</td>
                             <td><input type="text" id="inputoc1" autocomplete="off" name="nombre_solicitante" value="<?=$nombres." ".$apellido_p;?>" ></td>
                             <td>Número de turno</td>
                             <td><input type="text" autocomplete="off" name="numero_turno"></td>

                         </tr>
                         <tr>
                             <td>Derecho</td>
                             <td><input type="text" id="inputoc1" autocomplete="off" name="derecho" value="<?=$objFormato->getDerecho();?>" ></td>
                             <td>Gratis</td>
                             <td><input type="checkbox" name="gratis" value="1"></td>
                         </tr>
                         <?if(trim($rut_empresa)=="") {//contado?>
                         <input type="hidden" name="tipopago" value="1">
                         <?}
                         else{
                         ?>

                         <tr>
                             <td>Pertenece a empresa RUT:</td><td><?=$rut_empresa?></td>
                             <td>Solicitud como persona <input type="checkbox" name="tipopago" value="1"></td>
                         </tr>
                         <?}?>

                     </table>
                 </fieldset>
                <fieldset>
                <legend>Datos Repertorio</legend>
                Fojas <input type="text" name="fojas" value="1"><br>
                </fieldset>
                

                <div align="center"><h1><?=$nombre_formato?></h1></div><br>
                <?
                //Creando el documento a guardar
                $objDoc = new Documento();
                $objDoc->setEstado("en espera");
                $objDoc->setFecha_creacion(date("Y-m-d"));
                $objDoc->setFolio_doc("");
                $objDoc->setFormato($objFormato);
                $objDoc->setObjFunc($obj_funcionario);
                $objDoc->setNombre_doc($objFormato->getNombre_Formato());

                //estado, fecha_creacion, folio_doc, cod_formato, nro_solicitud, rut, nombre_doc, contenido_doc

                $codigo_formato = $objFormato->getCod_formato();
                $nombre_formato = $objFormato->getNombre_Formato();
                $precio_formato = $objFormato->getDerecho();
                $parrafo_formato = $objFormato->getContenido_parrafo();

                $pattern = '/\[(.*?)\]/si'; //expresion regular que detecta tags

                $formatoHTML = $parrafo_formato;
                $formatoHTML3 = $parrafo_formato;


                //----------------------Viendo con formato--------------------------------------
                $contador_tipo_tag = 0;
                $contador_tag_rut = 0;
                $contador_tag_nombre = 0;
                $contador_tag_dir = 0;
                preg_match_all($pattern,$parrafo_formato,$captura);

                $tam_imputs = sizeof($captura[0]);
                //echo "<br>tam_imputs: $tam_imputs<br>";

                $formato_texto = $formatoHTML;
                for($i=0; $i<sizeof($captura[0]); $i++)
                {
                    $tag = $captura[1][$i];
                    if($tag=="rut0" || $tag=="rut2")
                    {
                        $value_tag = $obj->getRut();
                    }
                    else if($tag=="rut1" || $tag=="rut3")
                    {
                        $value_tag = $obj_comprador->getRut();
                    }
                    else if($tag=="nombre_completo0" || $tag== "nombre_completo2" || $tag==  "nombre_completo3"|| $tag==  "nombre_completo5")
                    {
                        $value_tag = $obj->getNombres()." ".$obj->getApellido_p()." ".$obj->getApellido_m();
                    }
                    else if($tag=="nombre_completo1" || $tag=="nombre_completo4")
                    {
                        $value_tag = $obj_comprador->getNombres()." ".$obj_comprador->getApellido_p()." ".$obj_comprador->getApellido_m();
                    }
                     else if($tag=="direccion_com0")
                    {
                        $value_tag = $obj->getDireccion();                       
                    }
                     else if($tag=="direccion_com1")
                    {
                        $value_tag = $obj_comprador->getDireccion();
                    }
                     else if($tag=="ciudad0")
                    {
                        $value_tag = $obj->getCiudad();
                    }
                    else if($tag=="ciudad1")
                    {
                        $value_tag = $obj_comprador->getCiudad();
                    }
                    else if($tag=="dia0")
                    {
                        $value_tag = date("d");
                    }
                    else if($tag=="mes0")
                    {
                        $value_tag = $meses[date("n")];
                    }
                    else if($tag=="anyo1")
                    {
                        $value_tag = date("Y");
                    }
                    else $value_tag = "".$captura[1][$i]."";

                    //$formatoHTML3 = str_replace($captura[0][$i],"<input type='text' name='".$captura[1][$i]."' id='".$captura[1][$i]."' autocomplete='off' value='".$value_tag."'>",$formatoHTML3);
                    //$formatoHTML = str_replace($captura[0][$i],"<span onclick=\"valor_tag('".$captura[1][$i]."')\" id='".$captura[1][$i]."'>$value_tag</span>",$formatoHTML);
                    $formatoHTML = str_replace($captura[0][$i],"<span id='".$captura[1][$i]."c'>$value_tag</span>",$formatoHTML);

                    //$formato_texto = str_replace($captura[0][$i],$value_tag,$formato_texto);
                    //$formatoHTML2 = str_replace($captura[0][$i],"<span onclick=\"valor_tag('".$captura[1][$i]."')\" id='".$captura[1][$i]."1'>$value_tag</span>",$formatoHTML2);

                    //$formatoHTML = str_replace($captura[0][$i],"<b><u>[".$captura[1][$i]."]</u></b>",$formatoHTML);
                    $inputs.= "<tr><td>".$captura[1][$i]."</td><td><input type='text' name='".$captura[1][$i]."' id='".$captura[1][$i]."' autocomplete='off' value='".$value_tag."' onKeyUp=\"setValor('".$captura[1][$i]."');\"></td></tr>\n";

                }
                ?>
	<script>

		// Uncomment the following code to test the "Timeout Loading Method".
		// CKEDITOR.loadFullCoreTimeout = 5;

		window.onload = function() {
			// Listen to the double click event.
			if ( window.addEventListener )
				document.body.addEventListener( 'dblclick', onDoubleClick, false );
			else if ( window.attachEvent )
				document.body.attachEvent( 'ondblclick', onDoubleClick );

		};

		function onDoubleClick( ev ) {
			// Get the element which fired the event. This is not necessarily the
			// element to which the event has been attached.
			var element = ev.target || ev.srcElement;

			// Find out the div that holds this element.
			var name;

			do {
				element = element.parentNode;
			}
			while ( element && ( name = element.nodeName.toLowerCase() ) &&
				( name != 'div' || element.className.indexOf( 'editable' ) == -1 ) && name != 'body' );

			if ( name == 'div' && element.className.indexOf( 'editable' ) != -1 )
				replaceDiv( element );
		}

		var editor;

		function replaceDiv( div ) {
			if ( editor )
				editor.destroy();

			editor = CKEDITOR.replace( div );
                        document.getElementById('inputs').style.visibility='hidden';
                        document.getElementById('boton_sacar').style.visibility='visible';
		}
            function sacar_editor()
            {
            if ( editor )
				editor.destroy();
            document.getElementById('inputs').style.visibility='visible';
            document.getElementById('boton_sacar').style.visibility='hidden';
            }
	</script>
                    <?
                
                echo "<div id=\"doc_a_enviar\" class=\"editable\">";
                echo $formatoHTML;
                echo "</div><hr>";
                
                    ?>
                    
                    	<!--<textarea id="elm1" name="contenido_documento" rows="15" cols="85" style="width: 80%">
                        <?//echo $formatoHTML;?>
                        </textarea>-->
               
                <div id="boton_sacar" style="visibility:hidden"><input type="button" value="sacar" onclick="sacar_editor();"></div>
                <div id="inputs">
                        <table>
                        <?echo $inputs;//$formatoHTML;?>
                        </table>
                
                    <br>
                    <input type="hidden" id="inputoc" name="contenido_documento">
                    <input type="hidden" id="inputoc2" name="rut_empresa" value="<?=$rut_empresa;?>">

                    <input type="submit" id="guardar_documento" name="guardar_documento" value="Guardar">
                    <input type="hidden" name="nombre_documento" value="<?=$nombre_formato?>">
                    <input type="button" value="pdf" onclick="pdf();">
                </div>
                    </form>
                <script>
                    <?$obj_funcionario->setObjDocumento($objDoc);?>
                function editor_ok(){

                    //setValor_inversa();
                    
                   $("#cover").hide();
                   $("#editor").hide();
                   document.getElementById('doc_a_enviar2').innerHTML=tinymce.get('elm1').getContent();
                   //alert(tinymce.get('elm1').getContent());
                }
                function valor_tag(tagid)
                {

                   var valoractual=document.getElementById(tagid).innerHTML
                   var valor=prompt("Ingrese el valor para "+tagid,valoractual);
                   if(valor!= null && valor!=''){
                   document.getElementById(tagid+'1').innerHTML=valor;
                   document.getElementById(tagid).innerHTML=valor;
                   }
                   //alert("");
                }
                function personalizar_formato()
                {
                    setValor();
                   contenido=document.getElementById('doc_a_enviar2').innerHTML;
                   //alert(tinymce.get('elm1').getContent());
                   tinymce.get('elm1').setContent(contenido);
                   $("#cover").show();
                   $("#editor").show();
                   
                }
                function setValor(identificador)
                {
                    //alert(identificador);
                    document.getElementById(identificador+'c').innerHTML=document.getElementById(identificador).value;
                }
                function funct_guardar_documento()
                {
                    //setValor();

                    //document.getElementById('inputoc').value=document.getElementById('doc_a_enviar2').innerHTML;
                    //alert(document.getElementById('doc_a_enviar2').innerHTML);
                    //var form_text = $("#form_guardar").text();
                    //alert(document.getElementById('rut0').value);
                    //alert(document.getElementById('rut1').value);
                   // alert(document.getElementById('nombre_completo0').value);
                    //alert(document.getElementById('nombre_completo1').value);
                    document.getElementById('inputoc').value=document.getElementById('doc_a_enviar').innerHTML;
                    //alert(document.getElementById('inputoc').value);
                }
            	/*function setValor()
                {	ff=document.getElementById('form_guardar');
                        //alert("sad");
                        for(a=4; a<=ff.elements.length-1; a++)
                        {

                            if(ff.elements[a].type=='text')
                                {	//alert(ff.elements[a].id)

                                    document.getElementById(ff.elements[a].id+'1').innerHTML=document.getElementById(ff.elements[a].id).value;

                                }
                        }
                }

            	function setValor_inversa()
                {	ff=document.getElementById('form_guardar');
                        //alert("sad");
                        for(a=4; a<=ff.elements.length-1; a++)
                        {

                            if(ff.elements[a].type=='text')
                                {	//alert(ff.elements[a].id)

                                    document.getElementById(ff.elements[a].id).value=document.getElementById(ff.elements[a].id+'1').innerHTML;

                                }
                        }
                }*/
           function pdf(){
            document.getElementById('form_guardar').action='pdf_meson.php';
            document.getElementById('inputoc').value=document.getElementById('doc_a_enviar').innerHTML;
            document.getElementById('form_guardar').submit();
            document.getElementById('form_guardar').action='?op=solicitud_compra_venta_vehiculo';
        }
                </script>
                <?


                unset($objDoc);
	}
        unset($formato_listar);
	?>
        
<?//include("pie.php");?>